package com.leigq.www.common.constant;

/**
 * The type Queue constant.
 *
 * @author leiguoqing
 */
public interface QueueConstant {

    /**
     * 订单消息的队列名称
     */
    String ORDER_QUEUE_NAME = "order.queue";

    /**
     * 订单消息的队列交换机名称
     */
    String ORDER_QUEUE_EXCHANGE_NAME = "order.queue.exchange";

    /**
     * 订单消息的队列路由键名称
     */
    String ORDER_QUEUE_ROUTING_KEY = "order.queue.*";


    /**
     * 方式一普通的队列名称
     * <br/>
     * 利用TTL DLX实现延时队列的方式使用
     */
    String NORMAL_QUEUE1_NAME = "normal.queue1";

    /**
     * 方式一普通的队列交换机名称
     * <br/>
     * 利用TTL DLX实现延时队列的方式使用
     */
    String NORMAL_QUEUE1_EXCHANGE_NAME = "normal.queue1.exchange";

    /**
     * 方式一普通的队列路由键名称
     * <br/>
     * 利用TTL DLX实现延时队列的方式使用
     */
    String NORMAL_QUEUE1_ROUTING_KEY = "normal.queue1.routingKey";





    /**
     * 方式一普通队列延时后的消费队列（实际消费队列）名称
     * <br/>
     * 利用TTL DLX实现延时队列的方式使用
     */
    String DELAY_DLX_QUEUE1_NAME = "delay.dlx.queue1";

    /**
     * 方式一普通队列延时后的消费队列（实际消费队列）交换机名称
     * <br/>
     * 利用TTL DLX实现延时队列的方式使用
     */
    String DELAY_DLX_QUEUE1_EXCHANGE_NAME = "delay.dlx.queue1.exchange";

    /**
     * 方式一普通队列延时后的消费队列（实际消费队列）路由键名称
     * <br/>
     * 利用TTL DLX实现延时队列的方式使用
     */
    String DELAY_DLX_QUEUE1_ROUTING_KEY = "delay.dlx.queue1.routingKey";








    /**
     * 方式二延时队列名称
     * <br/>
     * 利用Rabbitmq的插件x-delay-message实现
     */
    String DELAY_QUEUE2_NAME = "delay.queue2";

    /**
     * 方式二延时队列交换机名称
     * <br/>
     * 利用Rabbitmq的插件x-delay-message实现
     */
    String DELAY_QUEUE2_EXCHANGE_NAME = "delay.queue2.exchange";

    /**
     * 方式二延时队列路由键名称
     * <br/>
     * 利用Rabbitmq的插件x-delay-message实现
     */
    String DELAY_QUEUE2_ROUTING_KEY = "delay.queue2.routingKey";



    /**
     * 错误消息的队列名称
     * <br/>
     * 处理消费失败消息的队列
     */
    String ERROR_QUEUE_NAME = "error.queue";

    /**
     * 错误消息的队列交换机名称
     * <br/>
     * 处理消费失败消息的队列
     */
    String ERROR_QUEUE_EXCHANGE_NAME = "error.queue.exchange";

    /**
     * 错误消息的队列路由键名称
     * <br/>
     * 处理消费失败消息的队列
     */
    String ERROR_QUEUE_ROUTING_KEY = "error.queue.routingKey";

}
